home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 February: Technology Seed / Mac Tech Seed Feb '97.toast / OpenDoc 1.2b2c1 / OpenDoc / Interfaces / IDL / Disptch.idl < prev    next >
Encoding:
Text File  |  1997-02-13  |  2.7 KB  |  128 lines  |  [TEXT/MPS ]

  1. //#    Copyright:    © 1993 - 1995 by Apple Computer, Inc., all rights reserved.
  2.  
  3. #ifndef _DISPTCH_
  4. #define _DISPTCH_
  5.  
  6. #ifndef _ODOBJECT_
  7. #include "ODObject.idl"
  8. #endif
  9.  
  10. //=====================================================================================
  11. // Classes defined in this interface
  12. //=====================================================================================
  13.  
  14. interface  ODDispatcher;
  15.  
  16. //=====================================================================================
  17. // Classes used by this interface
  18. //=====================================================================================
  19.  
  20. interface  ODDispatchModule;
  21. interface  ODFrame;
  22. interface  ODPart;
  23.  
  24.  
  25.  
  26. //=====================================================================================
  27. // ODDispatcher
  28. //=====================================================================================
  29.  
  30. interface ODDispatcher :  ODObject
  31. {
  32.     void AddDispatchModule(in ODEventType eventType,
  33.                            in ODDispatchModule dispatchModule); 
  34.   
  35.     ODDispatchModule GetDispatchModule(in ODEventType eventType); 
  36.   
  37.     void RemoveDispatchModule(in ODEventType eventType); 
  38.   
  39.     void AddMonitor(in ODEventType eventType, 
  40.                     in ODDispatchModule dispatchModule);
  41.   
  42.     void RemoveMonitor(in ODEventType eventType,
  43.                        in ODDispatchModule dispatchModule); 
  44.   
  45.     ODBoolean Dispatch(inout ODEventData eventData); 
  46.  
  47.     ODBoolean Redispatch(inout ODEventData eventData, inout ODEventInfo eventInfo); 
  48.   
  49.     void Exit(); 
  50.   
  51.     ODBoolean ShouldExit(); 
  52.  
  53. #ifdef _PLATFORM_MACINTOSH_
  54.  
  55.    void RegisterIdle(in ODPart part,
  56.                         in ODFrame frame,
  57.                      in ODIdleFrequency frequency);
  58.  
  59.    void UnregisterIdle(in ODPart part,
  60.                           in ODFrame frame);
  61.  
  62.    void SetIdleFrequency(in ODPart part,
  63.                             in ODFrame frame,
  64.                          in ODIdleFrequency frequency);
  65.  
  66.    void Yield(in ODFrame frame);
  67.  
  68.    void SetMouseRegion(in ODRgnHandle area);
  69.  
  70.    ODRgnHandle GetMouseRegion();
  71.  
  72.    void InvalidateFacetUnderMouse();
  73.  
  74.    ODSLong GetSleepTime();
  75.  
  76. #endif //# _PLATFORM_MACINTOSH_
  77.  
  78.  
  79. #ifdef __SOMIDL__
  80. #ifdef _PLATFORM_MACINTOSH_
  81.  
  82.   implementation
  83.   {
  84.          majorversion = 1; minorversion = 0;
  85.  
  86.          functionprefix = ODDispatcher;
  87.     
  88.         override:
  89.             somUninit,
  90.             Purge;
  91.         
  92.         releaseorder:
  93.             AddDispatchModule,
  94.             GetDispatchModule,
  95.             RemoveDispatchModule,
  96.             AddMonitor,
  97.             RemoveMonitor,
  98.             Dispatch,
  99.             Redispatch,
  100.             Exit,
  101.             ShouldExit,
  102.             RegisterIdle,                 
  103.             UnregisterIdle,
  104.             SetIdleFrequency,
  105.             Yield,
  106.             SetMouseRegion,
  107.             GetMouseRegion,
  108.             InvalidateFacetUnderMouse,
  109.             GetSleepTime,
  110.             reserved1,
  111.             reserved2,
  112.             reserved3,
  113.             reserved4,
  114.             reserved5,
  115.             reserved6,
  116.             reserved7,
  117.             reserved8;
  118.         
  119.     
  120.   };
  121. #endif //# __SOMIDL__
  122. #endif //# _PLATFORM_MACINTOSH_
  123.  
  124. };
  125.  
  126. #endif //# _DISPTCH_
  127.  
  128.